package com.cictec.middleware.tde.rm.protocol.rm.message;

import java.util.Date;

import com.cictec.middleware.tde.rm.protocol.TerminalMessage;

/**
 * 0x06 指令应答
 * 
 * @author Zhibin
 *
 */
public class Rm0x06TerminalMessage extends TerminalMessage {

	/**
	 * 
	 */
	private static final long serialVersionUID = 3135312950236822743L;
	
	/** 应答数据时间 HEX 4 字节 所要应答的数据 包数据发送时间 */
	private Date responseTime;
	/** 应答命令字 HEX 1 字节 所要应答的数据 包中的命令字 */
	private int responseMessageId;
	/** 应答流水号 HEX 1 字节 所要应答的数据 包中的流水号 */
	protected int responseSequence;
	/** 应答类型 HEX 1 字节 【0：自动应答1：手动应答】 */
	private int responseType;
	/** 预留 HEX 2 字节 预留 */
	private int reserved;
	
	/** 原始服务产生的消息UUID */
	private String originalMessageUuid;

	/** 原始服务产生的消息UUID */
	public String getOriginalMessageUuid() {
		return originalMessageUuid;
	}
	/** 原始服务产生的消息UUID */
	public void setOriginalMessageUuid(String originalMessageUuid) {
		this.originalMessageUuid = originalMessageUuid;
	}

	public Rm0x06TerminalMessage(Header header) {
		super(header);
	}

	/** 应答数据时间 HEX 4 字节 所要应答的数据 包数据发送时间 */
	public Date getResponseTime() {
		return responseTime;
	}

	/** 应答数据时间 HEX 4 字节 所要应答的数据 包数据发送时间 */
	public void setResponseTime(Date responseTime) {
		this.responseTime = responseTime;
	}

	/** 应答命令字 HEX 1 字节 所要应答的数据 包中的命令字 */
	public int getResponseMessageId() {
		return responseMessageId;
	}

	/** 应答命令字 HEX 1 字节 所要应答的数据 包中的命令字 */
	public void setResponseMessageId(int responseMessageId) {
		this.responseMessageId = responseMessageId;
	}

	/** 应答流水号 HEX 1 字节 所要应答的数据 包中的流水号 */
	public int getResponseSequence() {
		return responseSequence;
	}

	/** 应答流水号 HEX 1 字节 所要应答的数据 包中的流水号 */
	public void setResponseSequence(int responseSequence) {
		this.responseSequence = responseSequence;
	}

	/** 应答类型 HEX 1 字节 【0：自动应答1：手动应答】 */
	public int getResponseType() {
		return responseType;
	}

	/** 应答类型 HEX 1 字节 【0：自动应答1：手动应答】 */
	public void setResponseType(int responseType) {
		this.responseType = responseType;
	}

	/** 预留 HEX 2 字节 预留 */
	public int getReserved() {
		return reserved;
	}

	/** 预留 HEX 2 字节 预留 */
	public void setReserved(int reserved) {
		this.reserved = reserved;
	}

	@Override
	public String toString() {
		return "Rm0x06TerminalMessage [responseTime=" + responseTime + ", responseMessageId=" + responseMessageId
				+ ", responseSequence=" + responseSequence + ", responseType=" + responseType + ", reserved=" + reserved
				+ "]";
	}

}
